/*
 * $Id: ISecurityService.java 27 2007-04-13 01:02:48Z aaron.day $
 */
package org.crazydays.security;


import org.hibernate.Session;
import org.hibernate.Criteria;

import org.crazydays.core.data.PolisRight;
import org.crazydays.core.data.PolisUser;

/**
 * ISecurityService
 */
public interface ISecurityService
{
	/**
	 * Create criteria that will filter data according to the user's rights.
	 * The clazz must extend PolisData.
	 * 
	 * @param session Session
	 * @param clazz PolisData class
	 * @param right PolisRight
	 * @param user PolisUser
	 * @return Criteria
	 */
	public Criteria createCriteria(Session session, Class clazz,
			PolisRight right, PolisUser user);
}
